1. Field of Art
The present invention generally relates to the field of event-based computer systems, and more specifically, to managing and configuring complex event processing (CEP) applications.
2. Description of the Related Art
Recently, the availability and amount of real-time information has significantly increased. This allows businesses to monitor events in real time and to automatically respond, with minimal latency, when certain events or conditions, such as threats or business opportunities, arise. However, conventional computer systems, such as database systems, are not designed for such real-time event monitoring, analysis and response. Although conventional sequential programming languages, such as C++ or Java™ allow construction of customized systems for event detection and response, constructing such an event-based system or process is time-intensive and the inherent sequential nature of such programming languages is not suitable for various types of real-time event monitoring, analysis and response.
An event-based process or system is any routine or program for processing events such as for identifying meaningful events, detecting patterns of events, event correlation and abstraction, determining event hierarchies, detecting relationships between events or for any other purpose. Event-based computing systems allow real-time monitoring, analysis and response to various types of events. In event-based systems, incoming events are monitored for pre-defined patterns and defined actions are taken when a pattern is detected. Hence, these event-based systems support applications requiring proactive responses to patterns in changing data, such as real-time algorithmic trading, risk, compliance, telecommunications, digital battlefield applications, terrorist tracking, supply chain monitoring and logistics.
Additionally, business activity monitoring (BAM) techniques allow visualization of event patterns detected by an event-based process or computing system, thereby providing real-time insights into an event flow. For example, event-based computing using BAM techniques allows hedge funds to monitor trades, logistics operators to monitor locations and delays in a shipment, and surveillance personnel to detect fraudulent behavior at different devices.
However, there are no standard development tools and techniques for creating and deploying event-based BAM applications. Conventional development methods require use of a bespoke-based method, resulting in a long development cycle and a difficult to maintain system. Conventional development techniques also cannot uniformly abstract multiple applications or scenario types, distinguish between different input parameters and support streaming output parameters.